#include "widget.h"
#include "ui_widget.h"

#include <QThread>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    ui->lcdNumber->display(10);

//    time = new QTimer;
//    connect(time, &QTimer::timeout, this, &Widget::handle);
//    // 启动定时器，ms为单位设置为1s
//    time->start(1000);

//    int val = ui->lcdNumber->intValue();
//    while (true)
//    {
//        // 设置延时为1s
//        std::this_thread::sleep_for(std::chrono::seconds(1));
//        if (val <= 0)
//        {
//            break;
//        }

//        ui->lcdNumber->display(val - 1);
//    }

    std::thread t([this]()
    {
        int val = ui->lcdNumber->intValue();
        while (true)
        {
            // 设置延时为1s
            std::this_thread::sleep_for(std::chrono::seconds(1));
            if (val <= 0)
            {
                break;
            }

            ui->lcdNumber->display(val - 1);
        }
    });
}

Widget::~Widget()
{
    delete ui;
}

void Widget::handle()
{
    int val = ui->lcdNumber->intValue();
    if (val <= 0)
    {
        time->stop();
        return;
    }
    ui->lcdNumber->display(val - 1);
}

